In order for a computer to be part of a network, it must have a unique identity so that messages can be properly routed to the computer or network node. On the Internet network, for example, the address is represented in accordance with the Internet Protocol (IP) address. In the Internet Protocol each network node maybe represented with a numerical address. In version four of the Internet Protocol (Ipv4), the numerical address is a thirty two (32) bit address used in combination with a 32 bit mask number to define sub-networks accessible from and by the address in question. By convention, the 32 bit address and the mask is represented as “x.y.z.a”, where x, y, z and a may take any number between 0 and 255.
For humans it is much more convenient to utilize textual references to identify network locations than a numerical address. Therefore, to be able to utilize textual names alongside numbers, an infrastructure is required to provide name resolution whenever necessary. For example, a name resolution system has been implemented to provide name resolution in order to access the Internet. The system is commonly referred to as the Domain Name Service (DNS).
The Domain Name Service is a distributed database that includes the capability of translating Internet addresses to facilitate the location of computers connected to the Internet. A DNS name server translates a numerical address, assigned to a particular computer, into a sequence of words and vice versa. The word-based address is far more commonly used by people than the numerical address in order to make the address easier to remember and enter into a computer. The word-based address, for example, “president.whitehouse.gov”, is translated into a numerical address that consists of four sets of numbers separated by periods, for example, “198.137.240.92”, by the DNS system.
DNS names, by convention, are words written in lowercase letters with the words separated by periods, where the words refer to “domain” and “sub-domain” names. Each domain has a unique name and can be broken into a number of subdomains, with the responsibility for the subdomains residing the organization corresponding to the particular domain. The subdomain is the name of a computer host or an Internet provider and it may consist of several parts, or what amount to additional levels of subdomains. The DNS names take the form of “subdomain.domainname” (for example: “whitehouse.gov” or “cs.ucla.edu”), where the “domainname” represents a domain of the database, also referred to as a directory, partition or zone. Typically, the domain name indicates the type of organization. Common domain names include “corn” (for commercial organization), “net” (for networking organization), “edu” (for educational institutions) and “gov” (for the U.S. Federal government, the original sponsor of the Internet). Each domain and subdomain combination is referred to as a different zone. For example, in “cs.ucla.edu”, there is a edu zone, a ucla.edu zone and a cs.ucla.edu zone.
The DNS distributed database is indexed by the domain names and these provide paths in a large inverted tree structure, called the domain name space. At the top of the inverted tree, there is a single root with a limit of 127 levels from the root to the lowest level domain name.
The DNS system is really a DNS client-server system, where the name servers are computer programs that constitute the server side of the DNS client-server system. Information about some portions of the database is made available by the name servers to clients, called “resolvers” that often create queries and send them across a network to a name server. Programs running on a host computer, that require information from the domain name space, obtain the information from the resolvers, which access the name servers at different levels in the inverted tree. In addition to querying a name server, the resolver interprets the response and returns the information requested to the program that made the request. If the query is not answered, the resolver may resend the request and it may include a cache to store name related data retrieved previously from the name servers.
Root name servers are name servers at the root of a domain name, near the top of the inverted tree, and they are able to locate the “authoritative” name servers for the top level zones in the inverted tree. A name server is “authoritative” for servers under it on the tree because it knows the names of the servers at least one level under it on the tree. Thus, the top level root servers can provide the list of authoritative second level zone name servers. The second level zone name servers can provide the list of authoritative lower level name servers. Requests for addresses thus travel from level to level progressively through the tree structure until they are resolved and the necessary information is then returned to the requestor along the same path.
A host computer (or a cluster of computers) has one or more unique IP addresses, and one or more domain names, that identify the computer to other computers and users on the network. At the end of name resolution by the name services server, a host name is resolved into a numerical address.
The actual Internet address is used in the form of a URL (Uniform Resource Locator). URLs may use the IP address in either the numerical format or the word based address discussed earlier. An example of this convention is “http://www.whitehouse.gov”. The “http” indicates the use of the hypertext transfer protocol for access to the particular location on the Internet. Name servers map the IP numbers to domain names (gov) and subdomain names (whitehouse) in the above URL on the world wide web (www) and guarantee that the correct IP number of the source and the destination are provided for all transmitted data packets.
The present DNS system for the Internet can become very complex for firms providing host computers, such as Internet service providers, because of the use of multiple servers that must be synchronized. Frequent address changes must be constantly updated in hosting firms' very large local DNS databases and the servers must be synchronized so that hosting firms' customers' web sites can be located. What is needed is a way to locate web and user domains on a web server and for emails without a local database. There is a need for a way to be a mass host of domain names for users of hosting services without having a large local database of domain information.